package very.util.redis

import redis.clients.jedis.{ Jedis, JedisPool }

class RedisPool(redisPool: JedisPool, db: Int) {
  // 代码来源 scalacache.redis.scalacache.redis.RedisCache 的 withJedisCommands
  // 但感觉是有问题的，错误异常直接往上抛出, 只是打印了下日志
  def run[T](f: Jedis => T): T = {
    val redis = redisPool.getResource
    try {
      redis.select(db)
      f(redis)
    } finally {
      redis.close()
    }
  }
  def closePool:Unit = redisPool.close()
}
